﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Threading.Tasks;

namespace housingsafety.server.Entities.DataModels
{

    [Table("zm_yt_from")]
    public class ZmYtFrom : Repository.IEntity
    {
        /// <summary>
        /// 主键id
        /// </summary>
        [Column("id")]
        public string Id { get; set; }

        /// <summary>
        /// 房屋编号
        /// </summary>
        [Column("build_no")]
        [StringLength(255)]
        public string BuildNo { get; set; }

        /// <summary>
        /// 门牌号
        /// </summary>
        [Column("subdistrict")]
        [StringLength(255)]
        public string SubDistrict { get; set; }


        /// <summary>
        /// 阳台位置(户号)
        /// </summary>
        [Key]
        [Column("room_no")]
        [StringLength(255)]
        public string RoomNo { get; set; }
        /// <summary>
        /// 层名
        /// </summary>
        [Column("balcony_count")]
        public int? BalconyCount { get; set; }

        /// <summary>
        /// 当前是第几个阳台
        /// </summary>
        [Column("clurrent_balcony")]
        public int? ClurrentBalcony { get; set; }

        /// <summary>
        /// 楼栋地址
        /// </summary>
        [Column("building_locate")]
        [StringLength(255)]
        public string BuildingLocate { get; set; }


        /// <summary>
        /// 产权单位
        /// </summary>
        [Column("property_unit")]
        [StringLength(255)]
        public string PropertyUnit { get; set; }


        /// <summary>
        /// 阳台悬挑板嵌固端上表面是否出现平行于外墙的裂缝(1是 0否)
        /// </summary>
        [Column("balcony_parallelexteriorwall_fissure")]
        public short? BalconyParallelexteriorwallFissure { get; set; }

        /// <summary>
        /// 阳台悬挑板嵌固端上表面是否出现平行于外墙的裂缝描述
        /// </summary>
        [Column("balcony_parallelexteriorwall_fissure_msg")]
        [StringLength(255)]
        public string BalconyParallelexteriorwallFissureMsg { get; set; }


        /// <summary>
        /// 阳台侧立面与外墙交界处是否出现上宽下窄的缝隙(1是 0否)
        /// </summary>
        [Column("balcony_skxz_fissure")]
        public short? BalconySkxzFissure { get; set; }

        /// <summary>
        /// 阳台侧立面与外墙交界处是否出现上宽下窄的缝隙描述
        /// </summary>
        [Column("balcony_skxz_fissure_msg")]
        [StringLength(255)]
        public string BalconySkxzFissureMsg { get; set; }


        /// <summary>
        /// 阳台竖向栏板是否出现外闪现象(1是0否)
        /// </summary>
        [Column("balcony_external_flash")]
        public short? BalconyExternalFlash { get; set; }

        /// <summary>
        /// 阳台竖向栏板是否出现外闪现象描述
        /// </summary>
        [Column("balcony_external_flash_msg")]
        [StringLength(255)]
        public string BalconyExternalFlashMsg { get; set; }


        /// <summary>
        /// 悬挑板(含悬挑边梁)混凝土各表面是否出现由钢筋锈蚀引起的开裂(1是0否)
        /// </summary>
        [Column("cantilever_plate_craze")]
        public short? CantileverPlateCraze { get; set; }

        /// <summary>
        /// 悬挑板(含悬挑边梁)混凝土各表面是否出现由钢筋锈蚀引起的开裂描述
        /// </summary>
        [Column("cantilever_plate_craze_msg")]
        [StringLength(255)]
        public string CantileverPlateCrazeMsg { get; set; }


        /// <summary>
        /// 阳台外装饰面是否存在空中坠物隐患等变形与损伤情况
        /// </summary>
        [Column("balcony_venner_damage")]
        public short? BalconyVennerDamage { get; set; }

        /// <summary>
        /// 阳台外装饰面是否存在空中坠物隐患等变形与损伤情况描述
        /// </summary>
        [Column("balcony_venner_damage_msg")]
        [StringLength(255)]
        public string BalconyVennerDamageMsg { get; set; }



        /// <summary>
        /// 是否存在拆除门联窗窗下坎墙的行为(1是0否)
        /// </summary>
        [Column("wall_under_window")]
        public short? WallUnderWindow { get; set; }

        /// <summary>
        /// 是否存在拆除门联窗窗下坎墙的行为描述
        /// </summary>
        [Column("wall_under_window_msg")]
        [StringLength(255)]
        public string WallUnderWindowMsg { get; set; }


        /// <summary>
        /// 是否将原有阳台表面垫高(1是0否)
        /// </summary>
        [Column("balcony_bed_hedgehopping")]
        public short? BalconyBedHedgehopping { get; set; }

        /// <summary>
        /// 是否将原有阳台表面垫高(描述
        /// </summary>
        [Column("balcony_bed_hedgehopping_msg")]
        [StringLength(255)]
        public string BalconyBedHedgehoppingMsg { get; set; }


        /// <summary>
        /// 是否在阳台竖向栏杆、栏板内侧衬砌块材封堵(1是0否)
        /// </summary>
        [Column("balcony__block_plugging")]
        public short? BalconyBlockPlugging { get; set; }

        /// <summary>
        /// 是否在阳台竖向栏杆、栏板内侧衬砌块材封堵描述
        /// </summary>
        [Column("balcony__block_plugging_msg")]
        [StringLength(255)]
        public string BalconyBlockPluggingMsg { get; set; }



        /// <summary>
        /// 是否存在将阳台改作厨房或卫生间用途等影响阳台安全使用的行为(1是0否)
        /// </summary>
        [Column("balcony_remould")]
        public short? BalconyRemould { get; set; }

        /// <summary>
        /// 是否存在将阳台改作厨房或卫生间用途等影响阳台安全使用的行为描述
        /// </summary>
        [Column("balcony_remould_msg")]
        [StringLength(255)]
        public string BalconyRemouldMsg { get; set; }


        /// <summary>
        /// 是否存在隐患(1存在安全隐患，0没有发现)
        /// </summary>
        [Column("is_have_yh")]
        public short? IsHaveYh { get; set; }

        /// <summary>
        /// 处理意见(0观察使用 ，1维修维护，2观察使用，3应急处理)
        /// </summary>
        [Column("handling_suggestion")]
        [StringLength(255)]
        public string HandlingSuggestion { get; set; }


        [Required]
        [Column("create_by")]
        [StringLength(50)]
        public string CreateBy { get; set; }
        [Column("create_on", TypeName = "timestamp(6) without time zone")]
        public DateTime CreateOn { get; set; }
        [Column("create_ip")]
        [StringLength(20)]
        public string CreateIp { get; set; }
        [Column("modified_by")]
        [StringLength(50)]
        public string ModifiedBy { get; set; }
        [Column("modified_on", TypeName = "timestamp(6) without time zone")]
        public DateTime? ModifiedOn { get; set; }
        [Column("modified_ip")]
        [StringLength(20)]
        public string ModifiedIp { get; set; }
        [Column("is_delete")]
        public short? IsDelete { get; set; }
        [Column("delete_by")]
        [StringLength(50)]
        public string DeleteBy { get; set; }
        [Column("delete_on", TypeName = "timestamp(6) without time zone")]
        public DateTime? DeleteOn { get; set; }
        [Column("delete_ip")]
        [StringLength(20)]
        public string DeleteIp { get; set; }


        /// <summary>
        /// 是否存在隐患(1存在安全隐患，0没有发现)
        /// </summary>
        [Column("numyhwt_yt")]
        public int? NumYhwtYt { get; set; }
        /// <summary>
        /// 记录人
        /// </summary>
        [Column("recorder")]
        public string Recorder { get; set; }

        /// <summary>
        /// 检查人
        /// </summary>
        [Column("check_by")]
        public string CheckBy { get; set; }

        [Column("msg")]
        [StringLength(255)]

        public string? Msg { get; set; }

        [Column("roomnum")]
        [StringLength(255)]

        public string? RoomNum { get; set; }
    }
}
